use rmanus::agent::{Agent, AgentConfig};
use anyhow::{Context, Result};
use log::LevelFilter;
use simple_logger::SimpleLogger;

#[tokio::main]
async fn main() -> Result<()> {
    SimpleLogger::new().with_level(LevelFilter::Info).init().context("Init logger")?;

    let config = AgentConfig::default();
    let mut agent = Agent::load_config(config)?;
    
    let answer = agent.run("帮我创建一个 hello.c 文件，可以输出 \"hello world!\"，并且使用 gcc 编译得到 hello 可执行文件！".to_string()).await?;
    println!("{}", answer);

    Ok(())
}